Skip to content

feat: complete OpenCode V2 parity and endpoint routing - #144

Merged
BrainerVirus merged 7 commits into
mainfrom
feature/2026-09-28-claude-routing
Sep 28, 2026
Merged

BrainerVirus merged 7 commits into
mainfrom
feature/2026-09-28-claude-routing

Conversation

@BrainerVirus

Copy link
Copy Markdown
Owner

What changed

  • Completes catalog metadata and context-tier mapping while preserving OpenCode V1 behavior and adding V2 provider transforms plus key/environment auth.
  • Routes models by the endpoint metadata refreshed by catalog sync, including same-CLI-version refreshes; avoids timestamp-only catalog changes.
  • Removes the redundant manual provider block from the repo config and updates the README/spec with current V1/V2 setup and plan limits.

Validation

  • bun run check passed: 235 tests, 668 assertions, lint, format, and typecheck.
  • bun run build and bun run verify:release-candidate passed.
  • Isolated official Docker checks: V1.18.30 listed 82 models; V2.0.18 listed the same 82 through /api/model and exposed key/env integration methods. DeepSeek V4 Flash returned OK in V2; Responses routing passed local mock-stream checks in both versions.
  • A GOAT-key Claude Sonnet 4.6 request returned MODEL_NOT_IN_PLAN (Pro and above or extra on-demand usage). Entitled Claude inference remains unverified; the docs ask users with access to open an issue or PR if routing fails.

The active global OpenCode config and auth files were not changed.

@BrainerVirus
BrainerVirus merged commit f5c75bc into main Sep 28, 2026
5 checks passed
@BrainerVirus
BrainerVirus deleted the feature/2026-09-28-claude-routing branch September 28, 2026 22:47
@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 0.10.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant